# -*- coding:utf-8 -*-

'''
numpy 的ndarray 快速的元素级数组函数

一元函数
abs,fabs                                        计算整数、浮点数或复数的绝对值。对于非复数值，可以使用更快的fabs
sqrt                                            计算各元素的平方根。 相当于arr ** 0.5
sqare                                           计算各元素的平方。相当于 arr ** 2
exp                                             计算各元素的e^x
log,log10,log2,log1p                            分别为自然对数、底数为10的log、底数为2的log和log(1 + x)
sign                                            计算各元素的正负号:1(正数)、0(零)、-1(负数)
ceil                                            计算各元素的ceiling值，即大于等于该值的最小整数
floor                                           计算各元素的floor值，即小于等于该值的最小整数
rint                                            将各元素值四舍五入到最接近的整数，保留dtype
modf                                            将数组小数部分与整数部分以两个独立数组的形式返回
isnan                                           返回一个表示"那些值是NaN(这不是一个数字)"的布尔型数组
isinite,isinf                                   分别返回一个表示"哪些元素是有限的(非inf,非NaN)" 或 "哪些元素是无穷"的布尔数组
cos,cosh,sin,sinh,tan,tanh                      普通型或双曲型三角函数
arrcos,arrcosh,arcsin,arcsinh atctan,arctanh    反三角函数
logical_not                                     计算各元素 not x 的真值，相当于 -arr

二元函数
add                                             将数组中对应的元素相加
subtract                                        从第一个数组中减去第二个数组中的元素
multiply                                        数组元素相乘
divide,floor_divide                             除法或向下取整除法
power                                           对第一个数组中的元素A和第二个数组中的元素B，计算A^B
maximum,fmax                                    计算元素级的最大值。fmax将忽略NaN
minimun,fmin                                    计算元素级的最小值。fmin将忽略NaN
mod                                             元素级求模计算
copysign                                        将第二个数组中的符号复制给第一个数组中的值
greater,greater_equal,less,less_equal,equal,not_equal   执行元素级的比较，最终产生布尔型数组
logical_and,logical_or,logical_xor              执行元素级的真值逻辑运算，最终产生布尔型数组

'''
import  numpy as np
# rint 的用法。每个元素都四舍五入变成整数,后面会带小数点，但是
a = [1.23,3.256,4.6,3.2,6.5892,6]
b = np.array(a)
print(np.rint(b)) # array([ 1.,  3.,  5.,  3.,  7.,  6.])
print(b.dtype) # dtype('float64')
print(np.rint(b).dtype) # dtype('float64')

